home *** CD-ROM | disk | FTP | other *** search
/ Directorty Opus 5 - Magellan 2 / Opus 5 - Magellan 2.iso / Extras / opussdk / include / dopus / drag.h < prev    next >
C/C++ Source or Header  |  1996-08-28  |  2KB  |  56 lines

  1. #ifndef _DOPUS_DRAG
  2. #define _DOPUS_DRAG
  3.  
  4. /*****************************************************************************
  5.  
  6.  Drag routines
  7.  
  8.  *****************************************************************************/
  9.  
  10. #ifndef GRAPHICS_GELS_H
  11. #include <graphics/gels.h>
  12. #endif
  13.  
  14. typedef struct _DragInfo
  15. {
  16.     struct RastPort    *rastport;    // Stores RastPort this bob belongs to
  17.     struct ViewPort    *viewport;    // Stores ViewPort
  18.  
  19.     WORD        width;        // Bob width
  20.     WORD        height;        // Bob height
  21.  
  22.     struct VSprite    sprite;        // VSprite structure
  23.     struct Bob    bob;        // BOB structure
  24.  
  25.     unsigned long    flags;        // Flags
  26.  
  27.     struct RastPort    drag_rp;    // RastPort we can draw into
  28.     struct BitMap    drag_bm;    // BitMap we can draw into
  29.  
  30.     struct Window    *window;    // Window pointer
  31. } DragInfo;
  32.  
  33. typedef struct
  34. {
  35.     struct VSprite    head;        // GEL list head sprite
  36.     struct VSprite    tail;        // GEL list tail sprite
  37.     struct GelsInfo    info;        // GEL info
  38. } DragInfoExtra;
  39.  
  40. #define DRAGF_VALID        (1<<0)    // Bob is valid
  41. #define DRAGF_OPAQUE        (1<<1)    // Bob should be opaque
  42. #define DRAGF_DONE_GELS        (1<<2)    // Installed GelsInfo
  43. #define DRAGF_NO_LOCK        (1<<3)    // Don't lock layers
  44. #define DRAGF_TRANSPARENT    (1<<4)    // Bob should be transparent (use with opaque)
  45.  
  46. void FreeDragInfo(DragInfo *);
  47. void GetDragImage(DragInfo *,long,long);
  48. DragInfo *GetDragInfo(struct Window *,struct RastPort *,long,long,long);
  49. void GetDragMask(DragInfo *);
  50. void HideDragImage(DragInfo *);
  51. void ShowDragImage(DragInfo *,long,long);
  52. void StampDragImage(DragInfo *,long,long);
  53.  
  54.  
  55. #endif
  56.